.audio-message {
  padding: 8rpx 20rpx; /* 减少内边距，控制整体高度 */
  background: #fff;
  display: flex;
  align-items: center;
  gap: 14rpx;
  box-sizing: border-box;
  height: 80rpx; /* 固定最高高度为80rpx */
  border-radius: 2px 8px 8px 8px;
}
/* 左右布局区分 */
.audio-message:not(.my-audio) {
  margin-right: auto;
}
.audio-message.my-audio {
  margin-left: auto;
  flex-direction: row-reverse;
  border-radius: 8px 2px 8px 8px;
}

/* 图标与波形尺寸适配80rpx高度 */
.audio-icon, .waveform-container {
  width: 40rpx;  /* 适配高度的图标尺寸 */
  height: 40rpx; /* 与整体高度协调 */
  flex-shrink: 0;
}

.waveform-container {
  display: flex;
  align-items: center;
  justify-content: center;
}

/* 波形区域尺寸匹配容器 */
.waveform {
  display: flex;
  align-items: center;
  gap: 4rpx;
  height: 40rpx; /* 与图标高度一致 */
}

/* 波形线条比例调整 */
.wave-bar {
  width: 4rpx;
  background-color: #666;
  border-radius: 2rpx;
  height: 14rpx; /* 静态高度 */
  animation: wave 0.8s infinite ease-in-out;
}

/* 波形动画幅度适配高度 */
@keyframes wave {
  0%, 100% { height: 14rpx; }
  25% { height: 34rpx; }  /* 最大高度不超过容器 */
  50% { height: 22rpx; }
  75% { height: 28rpx; }
}

/* 时长文本尺寸适配 */
.audio-duration {
  font-family: PingFangSC-Medium;
  font-size: 28rpx; /* 保持清晰同时不占过多高度 */
  color: #333;
  flex-shrink: 0;
  text-align: center;
  min-width: 45rpx;
}